home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1999 January: Mac OS SDK / Dev.CD Jan 99 SDK1.toast / Development Kits / Interfaces&Libraries / Universal / Interfaces / PInterfaces / DiskInit.p < prev    next >
Encoding:
Text File  |  1998-08-17  |  4.0 KB  |  132 lines  |  [TEXT/MPS ]

  1. {
  2.      File:        DiskInit.p
  3.  
  4.      Contains:    Disk Initialization Package ('PACK' 2) Interfaces.
  5.  
  6.      Version:    Technology:    System 8.1
  7.                  Release:    Universal Interfaces 3.2
  8.  
  9.      Copyright:    © 1985-1995, 1997-1998 by Apple Computer, Inc., all rights reserved
  10.  
  11.      Bugs?:        For bug reports, consult the following page on
  12.                  the World Wide Web:
  13.  
  14.                      http://developer.apple.com/bugreporter/
  15.  
  16. }
  17. {$IFC UNDEFINED UsingIncludes}
  18. {$SETC UsingIncludes := 0}
  19. {$ENDC}
  20.  
  21. {$IFC NOT UsingIncludes}
  22.  UNIT DiskInit;
  23.  INTERFACE
  24. {$ENDC}
  25.  
  26. {$IFC UNDEFINED __DISKINIT__}
  27. {$SETC __DISKINIT__ := 1}
  28.  
  29. {$I+}
  30. {$SETC DiskInitIncludes := UsingIncludes}
  31. {$SETC UsingIncludes := 1}
  32.  
  33. {$IFC UNDEFINED __MACTYPES__}
  34. {$I MacTypes.p}
  35. {$ENDC}
  36.  
  37.  
  38. {$PUSH}
  39. {$ALIGN MAC68K}
  40. {$LibExport+}
  41.  
  42.  
  43. TYPE
  44.     HFSDefaultsPtr = ^HFSDefaults;
  45.     HFSDefaults = RECORD
  46.         sigWord:                PACKED ARRAY [0..1] OF CHAR;            {  signature word  }
  47.         abSize:                    LONGINT;                                {  allocation block size in bytes  }
  48.         clpSize:                LONGINT;                                {  clump size in bytes  }
  49.         nxFreeFN:                LONGINT;                                {  next free file number  }
  50.         btClpSize:                LONGINT;                                {  B-Tree clump size in bytes  }
  51.         rsrv1:                    INTEGER;                                {  reserved  }
  52.         rsrv2:                    INTEGER;                                {  reserved  }
  53.         rsrv3:                    INTEGER;                                {  reserved  }
  54.     END;
  55.  
  56.  
  57. CONST
  58.     kHFSPlusDefaultsVersion        = 1;
  59.  
  60.  
  61. TYPE
  62.     HFSPlusDefaultsPtr = ^HFSPlusDefaults;
  63.     HFSPlusDefaults = RECORD
  64.         version:                UInt16;                                    {  version of this structure  }
  65.         flags:                    UInt16;                                    {  currently undefined; pass zero  }
  66.         blockSize:                UInt32;                                    {  allocation block size in bytes  }
  67.         rsrcClumpSize:            UInt32;                                    {  clump size for resource forks  }
  68.         dataClumpSize:            UInt32;                                    {  clump size for data forks  }
  69.         nextFreeFileID:            UInt32;                                    {  next free file number  }
  70.         catalogClumpSize:        UInt32;                                    {  clump size for catalog B-tree  }
  71.         catalogNodeSize:        UInt32;                                    {  node size for catalog B-tree  }
  72.         extentsClumpSize:        UInt32;                                    {  clump size for extents B-tree  }
  73.         extentsNodeSize:        UInt32;                                    {  node size for extents B-tree  }
  74.         attributesClumpSize:    UInt32;                                    {  clump size for attributes B-tree  }
  75.         attributesNodeSize:        UInt32;                                    {  node size for attributes B-tree  }
  76.         allocationClumpSize:    UInt32;                                    {  clump size for allocation bitmap file  }
  77.     END;
  78.  
  79.  
  80. PROCEDURE DILoad;
  81.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  82.     INLINE $7002, $3F00, $A9E9;
  83.     {$ENDC}
  84. PROCEDURE DIUnload;
  85.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  86.     INLINE $7004, $3F00, $A9E9;
  87.     {$ENDC}
  88. FUNCTION DIBadMount(where: Point; evtMessage: UInt32): INTEGER;
  89.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  90.     INLINE $7000, $3F00, $A9E9;
  91.     {$ENDC}
  92. FUNCTION DIFormat(drvNum: INTEGER): OSErr;
  93.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  94.     INLINE $7006, $3F00, $A9E9;
  95.     {$ENDC}
  96. FUNCTION DIVerify(drvNum: INTEGER): OSErr;
  97.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  98.     INLINE $7008, $3F00, $A9E9;
  99.     {$ENDC}
  100. FUNCTION DIZero(drvNum: INTEGER; volName: Str255): OSErr;
  101.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  102.     INLINE $700A, $3F00, $A9E9;
  103.     {$ENDC}
  104. {
  105.     DIXFormat, DIXZero, and DIReformat are only available when FSM (File System Manager) is installed.
  106.     FSM is part of Macintosh PC Exchange and System 7.5.
  107. }
  108. FUNCTION DIXFormat(drvNum: INTEGER; fmtFlag: BOOLEAN; fmtArg: UInt32; VAR actSize: UInt32): OSErr;
  109.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  110.     INLINE $700C, $3F00, $A9E9;
  111.     {$ENDC}
  112. FUNCTION DIXZero(drvNum: INTEGER; volName: Str255; fsid: INTEGER; mediaStatus: INTEGER; volTypeSelector: INTEGER; volSize: UInt32; extendedInfoPtr: UNIV Ptr): OSErr;
  113.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  114.     INLINE $700E, $3F00, $A9E9;
  115.     {$ENDC}
  116. FUNCTION DIReformat(drvNum: INTEGER; fsid: INTEGER; volName: Str255; msgText: Str255): OSErr;
  117.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  118.     INLINE $7010, $3F00, $A9E9;
  119.     {$ENDC}
  120.  
  121.  
  122. {$ALIGN RESET}
  123. {$POP}
  124.  
  125. {$SETC UsingIncludes := DiskInitIncludes}
  126.  
  127. {$ENDC} {__DISKINIT__}
  128.  
  129. {$IFC NOT UsingIncludes}
  130.  END.
  131. {$ENDC}
  132.